package cn.edu.ntu.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;


/**
 * @author wpfc
 * @ref    http://blog.csdn.net/blackmambaprogrammer/article/details/72354007
 */
//@EnableWebMvc
@EnableSwagger2
@Configuration
public class SwaggerConfig {

	@Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("cn.dq.controller")) // 注意修改此处的包名
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
        		.title("接口列表 v1.1.0") // 任意，请稍微规范点
        		.description("接口测试") // 任意，请稍微规范点
        		.termsOfServiceUrl("http://url/swagger-ui.html") // 将“url”换成自己的ip:port
 			    .contact("wpfc") // 无所谓（这里是作者的别称）
                 .contact(new Contact("wpfc", "http://www.wpfc.club", "***"))
                 .version("1.1.0")
                 .build();
    }
	
}
